Tool Support for the Interactive Derivation of Formally Correct Functional Programs

نویسندگان

  • Walter Guttmann
  • Helmuth Partsch
  • Wolfram Schulte
  • Ton Vullinghs
چکیده

This paper describes the program transformation system Ultra. The intended use of Ultra is to assist programmers in the formal derivation of correct and efficient programs from high-level descriptive or operational specifications. Ultra supports equational reasoning about functional programs using defining equations, algebraic laws of underlying data structures, and transformation rules. The system does not only support modifying terms but is also useful for bookkeepingand development-navigating tasks. The most salient features of Ultra are its sound theoretical foundation, its extendability, its flexible and convenient way to express transformation tasks, its comfortable user interface, and its lean and portable implementation. Ultra itself is written in the functional language Gofer.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

System Support for the Interactive Transformation of Functional Programs

This paper describes the program transformation system Ultra. The intended use of Ultra is to assist programmers in the formal derivation of correct and ef-cient programs from high-level descriptive or operational speciications. The most salient features of Ul-tra are its sound theoretical foundation, its lean, and portable implementation, its extendability, its exible and convenient way to exp...

متن کامل

KIDS - A Knowledge-Based Software Development System

The Kestrel Interactive Development System (KIDS) provides knowledge-based support for the derivation of correct and efficient programs from formal specifications. We trace the use of KIDS in deriving an algorithm for solving a problem arising from the design of sonar and radar signals. This derivation illustrates algorithm design, a generalized form of deductive inference, program simplificati...

متن کامل

Automatic Derivation of Loop Termination Conditions to Support Verification

This paper introduces a repeatable and constructive approach to the analysis of loop progress and termination conditions in imperative programs. It is applicable to all loops for which a variant function can be defined using only loop guard variables. The approach involves the algorithmic derivation of loop progress and termination conditions directly from the code itself. The derivation of the...

متن کامل

Design of Safe PLC Programs by Using Petri Nets and Formal Methods

The paper presents an approach which combines the formalism of Petri Nets and of model checking in order to deliver correct and dependable PLC programs. Based on SIPNs, a variant of PNs, the complete controller development process from an informal specification to the final implementation on a PLC is discussed. The SIPN formalized according to corresponding plant model enables the derivation of...

متن کامل

CACHET: An Interactive, Incremental-Attribution-Based Program Transformation System for Deriving Incremental Programs

This paper describes the design and implementation of an interactive, incremental-attribution-based program transformation system, CACHET, that derives incre-mental programs from non-incremental programs written in a functional language. CACHET is designed as a programming environment and implemented using a language-based editor generator, the Synthesizer Generator , with extensions that suppo...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • J. UCS

دوره 9  شماره 

صفحات  -

تاریخ انتشار 2003